Gemini (protokolla)

Gemini on vuodesta lähtien 2019 kehitetty informaationjakoverkko. Gemini sisältää protokollan tiedostojen siirtoon ja gemtext-merkintäkielen hypertekstidokumenttien julkaisuun (vrt. HTTP ja HTML). Geminin tarkoitus on tarjota kevyt ja yksityisyyttä kunnioittava vaihtoehto World Wide Webille.[1] Sen suunnittelu muistuttaa HTTP:tä edeltänyttä Gopher-protokollaa.

Geminin kehitti käyttäjä nimimerkiltään Solderpunk. Projekti alkoi kesäkuussa 2019 ja se protokolla viimeisteltiin lokakuussa 2022, mutta sitä ei ole standardoitu. Geminin palvelinten eli "kapselien" selaamiseen on olemassa Solderpunkin Pythonilla kehittämä AV-98-selain ja muiden tekemiä vaihtoehtoisia selaimia.

Gemini käyttää erittäin yksinkertaista gemtext-merkintäkieltä, joka sisältää otsikot, hyperlinkin, listan ja lainauksen merkinnän. Protokolla on suunniteltu niin, että sitä ei ole tarkoitus laajentaa, eikä se ikinä tule sisältämään ominaisuuksia kuten evästeet, kuvat, tyylitiedostot, fontit tai mitään mikä ladataan sivun jälkeen.[2]

Gopheriin verrattuna Gemini tukee oletuksena UTF-8:aa ja muita kansainvälisiä merkistöjä, sisällön tunnistamista MIME-tyypeillä, virheilmoituksia, URL-linkkejä ja virtuaalipalvelimia.[2]

Geminiä on arvosteltu siitä, että protokollan näennäisestä yksinkertaisuudesta huolimatta TLS 1.2 -salaus on pakollinen. Tämä puuttuu useista vanhoista järjestelmistä, jotka muuten pystyisivät käyttämään kevyttä protokollaa. Geminin suosituksena on "trust on first use" (TOFU) -turvallisuusmalli, jossa palvelimen sertifikaatti hyväksytään ensimmäistä kertaa sillä käydessä ja käyttäjää varoitetaan vain jos se muuttuu.[3]

  1. Project Gemini FAQ Project Gemini. Arkistoitu 22.6.2020. Viitattu 13.11.2020.
  2. a b https://gemini.circumlunar.space/docs/faq.html (Arkistoitu – Internet Archive)
  3. https://lwn.net/Articles/845446/

Developed by StudentB